package announcement

import (
	"time"

	"gorm.io/gorm"
)

// Notice 公告
type Notice struct {
	ID        uint           `gorm:"primarykey" json:"id"`
	TenantID  uint           `gorm:"not null;index" json:"tenant_id"` // 租户ID
	Title     string         `gorm:"size:100;not null" json:"title"`  // 标题
	Content   string         `gorm:"type:text" json:"content"`        // 内容
	Type      int            `gorm:"default:1" json:"type"`           // 类型：1-通知，2-公告
	Status    int            `gorm:"default:1" json:"status"`         // 状态：1-正常，0-禁用
	StartTime *time.Time     `json:"start_time"`                      // 开始时间
	EndTime   *time.Time     `json:"end_time"`                        // 结束时间
	CreatedAt time.Time      `json:"created_at"`
	UpdatedAt time.Time      `json:"updated_at"`
	DeletedAt gorm.DeletedAt `gorm:"index" json:"-"`
}

func (Notice) TableName() string {
	return "system_notice"
}
